JavaScript Range Area Chart trên CanvasJS được vẽ bằng cách tô bóng khu vực nằm giữa một phạm vi các giá trị (thấp, cao) & bao bọc nó bằng các đoạn đường thẳng. Biểu đồ phạm vi thường được sử dụng để hiện các biến (thấp & cao) trong khoảng thời gian được cung cấp như nhiệt độ, giá cả…
Đây là biểu đồ vùng được chia theo phạm vi, có tính tương tác và hỗ trợ hoạt ảnh, thu phóng, xoay & xuất dưới dạng ảnh.
Ví dụ bên dưới minh họa một biểu đồ vùng theo phạm vi được tạo bằng JavaScript kèm mã nguồn đầy đủ cho bạn chỉnh sửa trong trình duyệt hoặc lưu về máy chạy nội bộ.
<!DOCTYPE HTML>
<html>
<head>
<script>
window.onload = function () {
var chart = new CanvasJS.Chart("chartContainer", {
animationEnabled: true,
exportEnabled: true,
title:{
text: "Nhiệt độ ở Toronto - 7/2017"
},
axisY: {
title: "Nhiệt độ (°C)",
suffix: " °C"
},
axisX: {
valueFormatString: "DD MMMM"
},
data: [
{
type: "rangeArea",
xValueFormatString: "DD MMMM",
yValueFormatString: "#0.## °C",
toolTipContent: " <span style=\"color:#4F81BC\">{x}</span><br><b>Min:</b> {y[0]}<br><b>Max:</b> {y[1]}",
dataPoints: [
{ x: new Date(2017,06,01), y:[15, 21] },
{ x: new Date(2017,06,02), y:[13, 27] },
{ x: new Date(2017,06,03), y:[14, 23] },
{ x: new Date(2017,06,04), y:[17, 25] },
{ x: new Date(2017,06,05), y:[16, 23] },
{ x: new Date(2017,06,06), y:[16, 29] },
{ x: new Date(2017,06,07), y:[18, 27] },
{ x: new Date(2017,06,08), y:[16, 25] },
{ x: new Date(2017,06,09), y:[15, 25] },
{ x: new Date(2017,06,10), y:[16, 23] },
{ x: new Date(2017,06,11), y:[15, 26] },
{ x: new Date(2017,06,12), y:[19, 23] },
{ x: new Date(2017,06,13), y:[16, 19] },
{ x: new Date(2017,06,14), y:[16, 27] },
{ x: new Date(2017,06,15), y:[18, 27] },
{ x: new Date(2017,06,16), y:[17, 24] },
{ x: new Date(2017,06,17), y:[19, 23] },
{ x: new Date(2017,06,18), y:[19, 26] },
{ x: new Date(2017,06,19), y:[20, 30] },
{ x: new Date(2017,06,20), y:[17, 21] },
{ x: new Date(2017,06,21), y:[19, 30] },
{ x: new Date(2017,06,22), y:[21, 23] },
{ x: new Date(2017,06,23), y:[20, 24] },
{ x: new Date(2017,06,24), y:[17, 22] },
{ x: new Date(2017,06,25), y:[17, 22] },
{ x: new Date(2017,06,26), y:[16, 22] },
{ x: new Date(2017,06,27), y:[19, 26] },
{ x: new Date(2017,06,28), y:[18, 23] },
{ x: new Date(2017,06,29), y:[18, 27] },
{ x: new Date(2017,06,30), y:[20, 31] },
{ x: new Date(2017,06,31), y:[19, 27] }
]
}]
});
chart.render();
}
</script>
</head>
<body>
<div id="chartContainer" style="height: 300px; width: 100%;"></div>
<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
</body>
</html>
Nguồn: CanvasJS
Tùy biến biểu đồ
Bạn có thể thay đổi độ mờ của vùng được lấp đầy bằng thuộc tính fillOpacity
. Ngoài ra, bạn còn có thể tùy chỉnh thêm color
(màu sắc), markerSize
(kích thước đánh dấu), markerType
(kiểu đánh dấu), markerColor
(màu đánh dấu), markerBorderColor
(màu đường viền)…
Source: https://quantrimang.com/hoc/code-javascript-tao-mau-bieu-do-do-thi-vung-theo-pham-vi-195393